With the growing of the Internet devices, solving the IP address shortage problem is more and more important. Network Address Translation (NAT) and Internet Protocol version 6 (IPv6) are two possible solutions. Since IPv6 is not widely deployed yet, NAT is the major solution that shares a public IP address to several devices in the NAT.
In essence, the NAT traversal technology has the network address translation traversal problem, i.e., breaking the peer-to-peer communications and the Internet-oriented requests. To solve the network address translation traversal problem, a lot of technologies have been proposed, e.g., STUN (Session Traversal Utilities for NAT), TURN (Traversal Using Relay NAT), ALG (Application-Layer Gateway) and so on.
For example, the technical specifications of 3GPP (Third Generation Partnership Project) adopts the ALG technology to solve the network address translation traversal problem. In the ALG technology, a user terminal equipment must initiate a communication with a real-time transport protocol (RTP) proxy in order to create an RTP Internet address/port number mapping table. In other words, RTP packets must be transmitted firstly to the RTP proxy before being translated and transmitted to other peer terminals. For the ALG technology, the RTP proxy adds extra delay of the RTP packets and increases the possibility of losing the RTP packets.
Furthermore, real-time communications (e.g., Voice over IP (VoIP)) are extremely sensitive to the packet delay. Hence, for the ALG technology that needs to use the RTP proxy for network address translation and transmission of the RTP packets, the performance of the real-time communications will necessarily be compromised. In addition to the ALG technology, other conventional technologies for solving the network address translation traversal problem all must use an additional server or proxy for network address translation and transmission of the RTP packets. For example, the STUN technology needs to use a STUN server to obtain an IP, and needs to use an ICE (Interactive Connectivity Establishment) server to test availability of the IP; and the TURN technology also needs use of a TURN server.
According to the above descriptions, these conventional technologies for solving the network address translation traversal problem are necessarily confronted with the problems of extra packet delay and packet loss. Accordingly, an urgent need exists in the art to provide a more effective solution to the network address translation traversal problem in real-time communications.